.noFill {
    fill: none;
}

body {
    background: #edf0f1;
    padding: 80px 0 0 0;
}

header {
    width: 100%;
    height: 80px;
    position: fixed;
    padding: 15px;
    top: 0;
    left: 0;
    z-index: 5;
    background: #25b99a;
    -webkit-box-shadow: 0px 2px 4px rgba(44, 62, 80, 0.15);
    -moz-box-shadow: 0px 2px 4px rgba(44, 62, 80, 0.15);
    box-shadow: 0px 2px 4px rgba(44, 62, 80, 0.15);
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}

/* input输入框 */
header input {
    width: 100%;
    height: 50px;
    float: left;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
    text-indent: 18px;
    padding: 0 60px 0 0;
    background: rgba(255, 255, 255, 0.2);
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    border: 0px;
    box-shadow: none;
    outline: none;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* placeholder */
header input::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.75);
}

/* button */
header button {
    width: 50px;
    height: 50px;
    border-radius: 25px;
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 2;
    background: #fff;
    border: 0px;
    box-shadow: none;
    outline: none;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* svg */
header button svg {
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -8px 0 0 -8px;
}

/* svg fill */
header button svg .fill {
    fill: #25b99a;
}

/* =============================== */

.container {
    width: 100%;
    float: left;
    padding: 15px;
}

ul.todo {
    width: 100%;
    float: left;
}

ul.todo h4 {
    margin-bottom: 10px;
}

ul.todo li {
    width: 100%;
    min-height: 50px;
    float: left;
    font-size: 14px;
    font-weight: 500;
    color: #444;
    line-height: 22px;

    background: #fff;
    border-radius: 5px;
    position: relative;
    box-shadow: 0px 1px 2px rgba(44, 62, 80, 0.10);
    margin: 0 0 10px 0;
    padding: 14px 100px 14px 14px;
}

ul.todo li:last-of-type {
    margin: 0;
}

/* buttons */
ul.todo li .buttons {
    width: 100px;
    height: 50px;
    position: absolute;
    top: 0;
    right: 0;
}

ul.todo li .buttons button {
    width: 50px;
    height: 50px;
    float: left;
    background: none;
    position: relative;
    border: 0px;
    box-shadow: none;
    outline: none;
    cursor: pointer;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* 两个svg之间的线 */
ul.todo li .buttons button:last-of-type:before {
    content: "";
    width: 1px;
    height: 30px;
    position: absolute;
    top: 10px;
    left: 0;
    background: #edf0f1;
}

/* 设置svg图片的大小 */
ul.todo li .buttons button svg {
    width: 22px;
    height: 22px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -11px 0 0 -11px;
}

/* 设置对号svg的圆圈 */
ul.todo li .buttons button.complete svg {
    border-radius: 11px;
    border: 1.5px solid #25b99a;
    transition: background 0.2s ease;
}

/* 设置remove的颜色 */
ul.todo li .buttons button.remove svg .fill {
    fill: #c0cecb;
}

/* hover remove改变颜色 */
ul.todo li .buttons button.remove:hover svg .fill {
    fill: #e85656;
}

/* remove 动画效果 */
ul.todo li .buttons button svg .fill {
    transition: fill 0.2s ease;
}

/* 设置对号的颜色 */
ul.todo li .buttons button.complete svg .fill {
    fill: #25b99a;
}

/* 如果当前元素不是#completed,那么让对号变成白色 */
ul.todo:not(#completed) li .buttons button.complete:hover svg .fill {
    fill: #fff;
}

/* 如果当前元素不是#completed,那么让背景变成绿色 */
ul.todo:not(#completed) li .buttons button.complete:hover svg {
    background: rgba(37, 185, 154, 0.75);
}

/* 如果当前元素是#completed,那么让背景变成绿色 */
ul.todo#completed li .buttons button.complete svg {
    background: #25b99a;
    border: 0px;
}

/* 如果当前元素是#completed,那么让对号变成白色 */
ul.todo#completed li .buttons button.complete svg .fill {
    fill: #fff;
}

/* 设置完成列表容器的样式 */
ul.todo#completed {
    position: relative;
    padding: 60px 0 0 0;
}

/* 如果completed容器中包含内容, 那么在元素前添加一条线 */
ul.todo#completed:not(empty):before {
    content: '';
    width: 150px;
    height: 1px;
    background: #d8e5e0;
    position: absolute;
    top: 30px;
    left: 50%;
    margin: 0 0 0 -75px;
}